New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support every output format for the xrefs graph (agx) #10084
Conversation
Fix another crash for the interactive custom graph Fix scroll wheel after exiting interactive graph Fix whitespace
Awesome :)
… On 12 May 2018, at 15:33, Luca Di Bartolomeo ***@***.***> wrote:
Added the new command agx which displays the graph of all the references to the address given. For now it shows only hex offsets, but I was thinking on adding maybe more information in the body of the nodes (e.g. the disasm of the instruction or the which function the referencing instruction is in) in another pr.
Fixed also some bugs with aggv and agfv, in particular the mouse wheel was broken (printed garbage) when exiting from them.
You can view, comment on, or merge this pull request online at:
#10084
Commit Summary
add agx xrefs graph
Fix various crashes if the interactive graph was custom (aggv)
File Changes
M libr/core/cmd_anal.c (36)
M libr/core/graph.c (33)
Patch Links:
https://github.com/radare/radare2/pull/10084.patch
https://github.com/radare/radare2/pull/10084.diff
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
libr/core/graph.c
Outdated
@@ -3847,6 +3856,9 @@ R_API int r_core_visual_graph(RCore *core, RAGraph *g, RAnalFunction *_fcn, int | |||
} | |||
break; | |||
case 'S': | |||
if (!fcn) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
use if (fcn) { graph_single_step...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok will change it in a moment
break; | ||
case ')': | ||
rotateAsmemu (core); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why this needs a fcn to work?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The problem is not rotateAsmemu (core)
itself, but it's the next instruction, g->need_reload_nodes
...
In fact if need_reload_nodes is set the next time check_changes ()
is called it will call agraph_reload_nodes ()
, which does a r_agraph_reset ()
(that deletes every node in the graph) and after that a reload_nodes ()
, which calls get_bbnodes ()
that should create again the graph from scratch, but if fcn is NULL, it simply exits without doing anything.
The consequence is that if I create a custom graph and display it with aggv
and then I press ')'
the graph I built is lost.
Thanks! |
* add agx xrefs graph * Fix various crashes if the interactive graph was custom (aggv) * Fix scroll wheel after exiting interactive graph
Added the new command
agx
which displays the graph of all the references to the address given. For now it shows only hex offsets, but I was thinking on adding maybe more information in the body of the nodes (e.g. the disasm of the instruction or the which function the referencing instruction is in) in another pr.Fixed also some bugs with
aggv
andagfv
, in particular the mouse wheel was broken (printed garbage) when exiting from them.